if (localStorage.getItem("form-saver.js")) {
  if (
    window.confirm(`检测到本地已有数据存在，请确认是否使用此数据恢复表单？
${localStorage.getItem("form-saver.js")}`)
  ) {
    try {
      const forms = Array.from(document.getElementsByTagName("form"));
      const data = JSON.parse(localStorage.getItem("form-saver.js"));
      let hasFailed = false;
      forms.forEach((form, formIndex) => {
        const inputs = Array.from(form.elements);
        inputs.forEach((input, inputIndex) => {
          if (input.type === "hidden") {
            return;
          }
          const save = input.value;
          try {
            input.value = data[formIndex][inputIndex];
          } catch (e) {
            hasFailed = true;
            input.value = save;
            console.error("使用本地数据设置以下表单失败：");
            console.log(input);
            console.log(`应该还原的值为:${data[formIndex][inputIndex]}`);
            console.log(`失败原因：${e}`);
          }
        });
      });
      localStorage.removeItem("form-saver.js");
      if (hasFailed) {
        window.alert(
          "数据恢复完成，本地数据已清除，但是有一些表单还原失败，详情请查看控制台信息"
        );
      } else {
        window.alert(
          "数据恢复完成，本地数据已清除，如需保存页面数据到本地请再次执行本脚本"
        );
      }
    } catch (e) {
      window.alert(
        `对不起，脚本执行发生错误，可能是以下几个原因：
1. 网站发生了一些更改
2. 您的网站使用了key为"form-saver.js"的localStorage
--------
如有必要请联系脚本开发者（qq: 1789551634）`
      );
      console.log(e);
    }
  } else {
    if(window.confirm('是否要清除这个旧的本地数据？')){
      localStorage.removeItem('form-saver.js');
      window.alert('清除成功，如需保存新的数据到本地请再次执行本脚本');
    }else{
      window.alert("脚本未执行任何操作");
    }
  }
} else {
  if (window.confirm("即将把当前页表单数据存到本地，是否继续？")) {
    const forms = Array.from(document.getElementsByTagName("form"));
    const data = [];
    forms.forEach((form, formIndex) => {
      data.push([]);
      const inputs = Array.from(form.elements);
      inputs.forEach((input, inputIndex) => {
        if (input.type === "hidden") {
          return;
        }
        data[formIndex][inputIndex] = input.value;
      });
    });
    localStorage.setItem("form-saver.js", JSON.stringify(data));
    window.alert(
      "数据保存完成，如需把本地存储的数据恢复到页面中请再次执行本脚本"
    );
  } else {
    window.alert("脚本未执行任何操作");
  }
}
